rulesystem MoC with "MoC" {
  // rules
  rule slurp {
    x: Infom;
    negative { if { x.effect == Effect::local || x.effect == Effect::implicit; } }
    replace {}
  }
  // patterns
  pattern findDependant(provider:Infom, dependant: Infom) {
    alternative {
      base {
        dependant-:dependsOn->provider;
      }
      rec {
        negative { -:dependsOn->provider; }
        provider-:childOf->next:Infom;
        :findDependant(next,dependant);
      }
    }
  }
}
